home *** CD-ROM | disk | FTP | other *** search
/ PC World Komputer 2010 April / PCWorld0410.iso / hity wydania / Ubuntu 9.10 PL / karmelkowy-koliberek-desktop-9.10-i386-PL.iso / casper / filesystem.squashfs / usr / include / rpcsvc / rquota.x < prev    next >
Text File  |  2009-10-07  |  2KB  |  62 lines

  1. /* @(#)rquota.x    2.1 88/08/01 4.0 RPCSRC */
  2. /* @(#)rquota.x 1.2 87/09/20 Copyr 1987 Sun Micro */
  3.  
  4. /*
  5.  * Remote quota protocol
  6.  * Requires unix authentication
  7.  */
  8.  
  9. const RQ_PATHLEN = 1024;
  10.  
  11. struct getquota_args {
  12.     string gqa_pathp<RQ_PATHLEN>;      /* path to filesystem of interest */
  13.     int gqa_uid;                /* inquire about quota for uid */
  14. };
  15.  
  16. /*
  17.  * remote quota structure
  18.  */
  19. struct rquota {
  20.     int rq_bsize;            /* block size for block counts */
  21.     bool rq_active;          /* indicates whether quota is active */
  22.     unsigned int rq_bhardlimit;    /* absolute limit on disk blks alloc */
  23.     unsigned int rq_bsoftlimit;    /* preferred limit on disk blks */
  24.     unsigned int rq_curblocks;    /* current block count */
  25.     unsigned int rq_fhardlimit;    /* absolute limit on allocated files */
  26.     unsigned int rq_fsoftlimit;    /* preferred file limit */
  27.     unsigned int rq_curfiles;    /* current # allocated files */
  28.     unsigned int rq_btimeleft;    /* time left for excessive disk use */
  29.     unsigned int rq_ftimeleft;    /* time left for excessive files */
  30. };    
  31.  
  32. enum gqr_status {
  33.     Q_OK = 1,        /* quota returned */
  34.     Q_NOQUOTA = 2,      /* noquota for uid */
  35.     Q_EPERM = 3        /* no permission to access quota */
  36. };
  37.  
  38. union getquota_rslt switch (gqr_status status) {
  39. case Q_OK:
  40.     rquota gqr_rquota;    /* valid if status == Q_OK */
  41. case Q_NOQUOTA:
  42.     void;
  43. case Q_EPERM:
  44.     void;
  45. };
  46.  
  47. program RQUOTAPROG {
  48.     version RQUOTAVERS {
  49.         /*
  50.          * Get all quotas
  51.          */
  52.         getquota_rslt
  53.         RQUOTAPROC_GETQUOTA(getquota_args) = 1;
  54.  
  55.         /*
  56.           * Get active quotas only
  57.          */
  58.         getquota_rslt
  59.         RQUOTAPROC_GETACTIVEQUOTA(getquota_args) = 2;
  60.     } = 1;
  61. } = 100011;
  62.